/**   
 * 项目名：五位一体化工安全信息平台
 * 日期：    2019-12-06 15:05:46  
 * Copyright (c) 2015- joysuch-版权所有     
 */

package com.joysuch.wwyt.bp.service;

import com.joysuch.wwyt.bp.bean.BpOtherSafetyWorkSearchBean;
import com.joysuch.wwyt.bp.bean.BpWorkSafetyAuditListBean;
import com.joysuch.wwyt.bp.bean.BpWorkSafetyAuditListSearchBean;
import com.joysuch.wwyt.bp.bean.OtherSafetyWorkSearchBean;
import com.joysuch.wwyt.bp.entity.BpWorkSafetyAudit;
import com.joysuch.wwyt.bp.enums.SafetyWorkTypes;
import com.joysuch.wwyt.core.bean.SimpleSelectListBean;
import com.joysuch.wwyt.core.exception.BusinessRestrictionsException;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;

public interface BpWorkSafetyAuditService {

    Page<BpWorkSafetyAuditListBean> findByPage(Pageable page, BpWorkSafetyAuditListSearchBean condition);

    void delete(Long id) throws BusinessRestrictionsException;

    BpWorkSafetyAudit findById(Long id);

    BpWorkSafetyAudit findByTypeAndWorkId(SafetyWorkTypes type, Long id);

    public BpWorkSafetyAudit addOrUpdateWorkSafetyAudit(SafetyWorkTypes type, Long workId, String workCode,
            Long opFireFirstAuditUserId);

    public void changeState(SafetyWorkTypes type, Long workId, Integer state, String msg);

    // 更改验收状态
    public void changeCheckState(SafetyWorkTypes type, Long workId, Integer state, String msg);

    // 查找审核列表
    Page<BpWorkSafetyAuditListBean> findByPageCheck(Pageable page, BpWorkSafetyAuditListSearchBean condition);

    //查找所有状态列表
    Page<BpWorkSafetyAuditListBean> findByPageAll(Pageable page, BpWorkSafetyAuditListSearchBean condition);

   // Page<BpOtherSafetyWorkSearchBean>  getOtherSafetyWorkList(Pageable page, OtherSafetyWorkSearchBean bean);
}
